libxl: config parser: do not segfault in some error paths
authorIan Jackson <Ian.Jackson@eu.citrix.com>
Tue, 11 Jan 2011 19:28:22 +0000 (19:28 +0000)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Tue, 11 Jan 2011 19:28:22 +0000 (19:28 +0000)
In error paths, xlu__cfg_set_free can be called on NULL.
So check for that rather than segfaulting.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
tools/libxl/libxlu_cfg.c

index 864a723009d7e441219a5e882dc7604b05070d79..1ade7eacda84cf72f9cf116d89f6a9b6b201df75 100644 (file)
@@ -93,6 +93,7 @@ int xlu_cfg_readdata(XLU_Config *cfg, const char *data, int length) {
 void xlu__cfg_set_free(XLU_ConfigSetting *set) {
     int i;
 
+    if (!set) return;
     free(set->name);
     for (i=0; i<set->nvalues; i++)
         free(set->values[i]);